The manipulation of data in an efficient and predictable manner is a desired operational goal of applications that include service oriented architectures (SOAs). SOAs may include both interactive and background components that perform many different computing services. For example, an e-commerce application that serves millions of customers may include many thousands of servers located in numerous data center across the world. Such servers may be running hundreds of computing services that facilitate product recommendations, product ordering, product fulfillment, transaction processing, fraud detection, product shipping, and so forth. The SOAs are designed to manipulate data in an efficient and predictable manner, which is important when transferring data between different computing services.
When the computing services are used to fulfill a customer's order, data may be serialized, transmitted, and then deserialized across many different computing services, which may occur multiple times. Serialization is a transformation of a data structure or a data object into data bytes of a different format for transmission across a network and/or storage in a storage node. Deserialization is the extraction of a data structure and data objects from the series of data bytes. However, the serialization, transfer, and deserialization of data across multiple services may result in latency and bottlenecks. Further, the transfer of data may be inefficient as each computing service often only consumes or produces a small portion of the data.